p[structure-type="juan"] {
    font-size: 24px;
    /* 卷 */
    font-weight: bold;
}

p[structure-type="pian"] {
    font-size: 20px;
    /* 篇 */
    font-weight: bold;
}

p[structure-type="zhang"] {
    font-size: 18px;
    /* 章 */
    font-weight: bold;
}

p[structure-type="jie"] {
    font-size: 16px;
    /* 节 */
    font-weight: bold;
}

p[structure-type="xiaojie"] {
    font-size: 14px;
    /* 小节 */
    font-weight: bold;
}

.zhu {
    border-bottom: 1px dashed #409eff;
    /* 蓝色虚线底边 */
    position: relative;
    /* 为伪元素定位做准备 */
}

.zhu::before {
    content: '注';
    /* 显示"注"字 */
    display: inline-block;
    box-sizing: border-box;
    color: #409eff;
    /* 蓝色字体 */
    position: absolute;
    font-size: 10px;
    top: calc(100% + 4px);
    /* 在文本下方显示 */
    width: 100%;
    text-align: center;
    line-height: 10px;
}

.shu {

    border-bottom: 1px dashed #409eff;

    /* 蓝色虚线底边 */

    position: relative;

    /* 为伪元素定位做准备 */

}

.shu::before {

    content: '疏';

    /* 显示"疏"字 */

    display: inline-block;

    box-sizing: border-box;

    color: #409eff;

    /* 蓝色字体 */

    position: absolute;

    font-size: 10px;

    top: calc(100% + 4px);

    /* 在文本下方显示 */

    width: 100%;

    text-align: center;

    line-height: 10px;

}

.yin {
    border-bottom: 1px dashed #409eff;
    /* 蓝色虚线底边 */
    position: relative;
    /* 为伪元素定位做准备 */
}

.yin::before {
    content: '『';
    /* 显示"『" */
    display: inline-block;
    color: #409eff;
    /* 蓝色字体 */
    padding-right: 4px;
}

.yin::after {
    content: '』';
    /* 显示"』" */
    display: inline-block;
    color: #409eff;
    /* 蓝色字体 */
    padding-left: 4px;
}
/* Style for the "作者" (Author) class */
span.zuozhe {
    border-bottom: 1px dashed #409eff;
    /* Blue dashed underline */
    position: relative;
    /* Positioning for pseudo-elements */
}

span.zuozhe::before {
    content: '作者';
    /* Display "作者" */
    display: inline-block;
    box-sizing: border-box;
    color: #409eff;
    /* Blue text */
    position: absolute;
    font-size: 10px;
    top: calc(100% + 4px);
    /* Display below the text */
    width: 100%;
    text-align: center;
    line-height: 10px;
}

/* Style for the "目录" (Table of Contents) class */
span.mulu {
    border-bottom: 1px dashed #41466e;
    /* Blue dashed underline */
    position: relative;
    /* Positioning for pseudo-elements */
}

span.mulu::before {
    content: '目录';
    /* Display "目录" */
    display: inline-block;
    box-sizing: border-box;
    color: #41466e;
    /* Blue text */
    position: absolute;
    font-size: 0.75rem;
    top: calc(100% + 4px);
    /* Display below the text */
    width: 100%;
    text-align: center;
    line-height: 0.75rem;
}